|
57 |
|
# Markdown - преобразование md -» html
Содержание
- Пример преобразования md -> html
- Расширения markdown
- Использование расширения
fenced_code
- Использование расширения
codehilite
1. Пример преобразования md -> html
1 2 3 4 5 6 7 8 9 10 11 |
|
2. Расширения markdown
У него есть много модулей, которые можно подключать в зависимости от потребностей, используя, как отдельно, так и совместно, например::
post = markdown.markdown(md_post, extensions=["fenced_code"])
post = markdown.markdown(md_post, extensions=["codehilite"])
post = markdown.markdown(md_post, extensions=["fenced_code"], ["codehilite"])
post = markdown.markdown(md_post, extensions=['toc'])
Чем больше расширений подключается, тем больше html-кода генерируется.
3. Использование расширения fenced_code
post = markdown.markdown(md_post, extensions=["fenced_code"])
Если использовать только это расширение, то можно передавать классы и id, в преобразованный текст.
Для этого прописываем в блок кода: .python
. Тем самым блок кода будет иметь класс: class="python"
``` .python
print("Python example")
```
Либо через фигурные скобки, если надо передать несколько значений:
``` { .html, #python }
<p>HTML Document</p>
print("Python example")
```
Передача html напрямую:
``` { .my_class #primer style="color: #456; background: lightgreen;" }
```
3. Использование расширения codehilite
Активация модуля:
post = markdown.markdown(md_post, extensions=["codehilite"])
Данный модуль генерирует класс .codehilite
, который можно настроить в css
:
.codehilite {
border: 1px solid #2da12d;
...
}
Также расширение разного рода настройки нумерации строк:
``` { .lang linenos=true linenostart=1 hl_lines="2-3 9" title="Пример блока" }
```
Вставка нумерации
``` { .bash linenos=true linenostart=1 }
```